import { column } from '@adonisjs/lucid/orm'
import CommonBaseModel from '#common/base_model'

export default class Dict extends CommonBaseModel {
  /** 字典分类 */
  @column()
  declare className: string

  /** 字典名称 */
  @column()
  declare name: string

  /** 排序 */
  @column()
  declare sort: number

  /** 代码 */
  @column()
  declare code: string

  /** 是否系统预设 */
  @column()
  declare isBuiltin: boolean

  /** 扩展内容 */
  @column({
    prepare(value) {
      return JSON.stringify(value)
    },
  })
  declare extra: object | null

  /** 备注 */
  @column()
  declare memo: string
}
